package com.silence.springboot.enums;


import com.silence.springboot.interfaces.StatusCode;
import lombok.Getter;
import lombok.RequiredArgsConstructor;

/**
 * @author silence
 */

@Getter
@RequiredArgsConstructor
public enum ResultCode implements StatusCode {

    /**
     * 成功
     */
    SUCCESS(1000_0000, "成功"),

    /**
     * 失败
     */
    FAILED(9999_9999, "失败"),

    /**
     * 参数校验异常
     */
    VALIDATE_ERROR(1000_9001, "参数校验失败"),

    /**
     * 参数解析异常
     */
    PARAMS_PARSE_ERROR(1000_9002, "参数解析"),

    /**
     * 用户不存在
     */
    LOGIN_USER_NOT_FOUND(1000_1001, "用户不存在"),

    /**
     * 密码错误
     */
    LOGIN_USER_PASSWORD_ERROR(1000_1002, "密码错误"),

    /**
     * 用户名已存在
     */
    LOGIN_USER_USERNAME_EXIST(1000_1003, "用户名已存在"),

    /**
     * 密码不一致
     */
    LOGIN_USER_PASSWORD_NOT_SAME(1000_1004, "密码不一致"),

    /**
     * 登录 token 错误
     */
    LOGIN_USER_TOKEN_ERROR(1000_4001, "登录 token 错误"),

    /**
     * 新增用户基础信息失败
     */
    USER_BASE_INFO_INSERT_ERROR(1000_5001, "新增用户基础信息失败"),

    /**
     * 修改用户基础信息失败
     */
    USER_BASE_INFO_UPDATE_ERROR(1000_5002, "修改用户基础信息失败");

    /**
     * 状态码
     */
    private final int code;

    /**
     * 消息
     */
    private final String msg;

}